package doxygenxml.compound;

/**********************************************************************************************
 * Copyright (c) 2001-2020 Liquid Technologies Limited. All rights reserved.
 * See www.liquid-technologies.com for product details.
 *
 * Please see products End User License Agreement for distribution permissions.
 *
 * WARNING: THIS FILE IS GENERATED
 * Changes made outside of ##HAND_CODED_BLOCK_START blocks will be overwritten
 *
 * Generation  :  by Liquid XML Data Binder 18.0.5.9988
 * Using Schema: CENSORED
 **********************************************************************************************/

// <summary>
// </summary>
public enum DoxLanguage {
	Unknown,
	IDL,
	Java,
	CHash,
	D,
	PHP,
	ObjectiveMinusC,
	CPlusPlus,
	JavaScript,
	Python,
	Fortran,
	VHDL,
	XML,
	SQL,
	Markdown;

	// Converts a DoxLanguage enumeration to a string (suitable for the XML document)
	public static String DoxLanguageToString(doxygenxml.compound.DoxLanguage enumValue) throws com.liquid_technologies.ltxmllib18.exceptions.LtInvalidValueException {
		switch(enumValue)
		{
		case Unknown:
	    	return "Unknown";
		case IDL:
	    	return "IDL";
		case Java:
	    	return "Java";
		case CHash:
	    	return "C#";
		case D:
	    	return "D";
		case PHP:
	    	return "PHP";
		case ObjectiveMinusC:
	    	return "Objective-C";
		case CPlusPlus:
	    	return "C++";
		case JavaScript:
	    	return "JavaScript";
		case Python:
	    	return "Python";
		case Fortran:
	    	return "Fortran";
		case VHDL:
	    	return "VHDL";
		case XML:
	    	return "XML";
		case SQL:
	    	return "SQL";
		case Markdown:
	    	return "Markdown";
		default:
	    	throw new com.liquid_technologies.ltxmllib18.exceptions.LtInvalidValueException("Unknown enumeration value for doxygenxml.compound.DoxLanguage [" + enumValue.toString() + "]");
		}
	}
	
	// 	Converts a string to a DoxLanguage enumeration
	public static DoxLanguage DoxLanguageFromString(String enumValue) throws com.liquid_technologies.ltxmllib18.exceptions.LtInvalidValueException {
		String enumCollapsedValue = com.liquid_technologies.ltxmllib18.WhitespaceUtils.collapse(enumValue);
		if (enumCollapsedValue.equals("Unknown"))
			return Unknown;
		else if (enumCollapsedValue.equals("IDL"))
			return IDL;
		else if (enumCollapsedValue.equals("Java"))
			return Java;
		else if (enumCollapsedValue.equals("C#"))
			return CHash;
		else if (enumCollapsedValue.equals("D"))
			return D;
		else if (enumCollapsedValue.equals("PHP"))
			return PHP;
		else if (enumCollapsedValue.equals("Objective-C"))
			return ObjectiveMinusC;
		else if (enumCollapsedValue.equals("C++"))
			return CPlusPlus;
		else if (enumCollapsedValue.equals("JavaScript"))
			return JavaScript;
		else if (enumCollapsedValue.equals("Python"))
			return Python;
		else if (enumCollapsedValue.equals("Fortran"))
			return Fortran;
		else if (enumCollapsedValue.equals("VHDL"))
			return VHDL;
		else if (enumCollapsedValue.equals("XML"))
			return XML;
		else if (enumCollapsedValue.equals("SQL"))
			return SQL;
		else if (enumCollapsedValue.equals("Markdown"))
			return Markdown;
		else
			// ##HAND_CODED_BLOCK_START ID="Default Enum doxygenxml.compound.DoxLanguage"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
			throw new com.liquid_technologies.ltxmllib18.exceptions.LtInvalidValueException("Unknown enumeration value for doxygenxml.compound.DoxLanguage [" + enumValue + "]");
			// ##HAND_CODED_BLOCK_END ID="Default Enum doxygenxml.compound.DoxLanguage"## DO NOT MODIFY ANYTHING OUTSIDE OF THESE TAGS
	}
}

